package Modelo.BO;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class UsuarioBO
{
	private static UsuarioBO instancia;

	public static UsuarioBO getInstance() 
	{
		if (instancia == null) 
			instancia = new UsuarioBO();
		
		return instancia;
	}
	
	public boolean ValidaUsuario(String login, String senha) throws Exception
	{
		ResultSet dataSet = null;
		PreparedStatement stmt = null;
		boolean usuarioValido = false;
		
		try 
		{			
			String queryString = "select * from usuario where usuario.login = '" + login + "' and usuario.senha = '" + senha + "'";
			
			Connection connection;
		
			connection = ConnectionBuilder.getInstance().criaConexao(false);
			stmt = connection.prepareStatement(queryString);
			dataSet = stmt.executeQuery();
			
			usuarioValido = (dataSet.next());
		}
		catch (SQLException e) 
		{
			throw new Exception("Houve um erro ao tentar instanciar a conexao com o banco de dados, por favor contate o suporte.");
		}
		finally 
		{
			try 
			{
				stmt.close();
				ConnectionBuilder.getInstance().fechaConexao();
			} 
			catch (SQLException e) 
			{
				throw new Exception("Houve um erro ao tentar fechar a conexao com o banco de dados, por favor contate o suporte.");
			}
		}
		
		return usuarioValido;
	}
}
